Nowadays, when a device is designed it is usually made as a multifunctional unit. The concept of multifunctional device is especially visible in microprocessor controlled devices. There are known telecommunication devices that are designed to support several different transmission protocols or for example multifunctional devices that can perform different tasks (e.g. copying/printing/faxing . . . ). With this wealth of features the devices are desired by customers, but in many cases the price to be paid for such a universal device is too high. There are also known devices comprising many different features implemented (it can be made in form of software or hardware), but some of these features are disabled and the customer pays only for those enabled. The supplier of the device upon request from the customer can enable those disabled features by providing so called softkey to be input (or installed) in the device. The role of the softkey is to enable, or unlock, the feature requested. This approach allows for new business model where the multifunctional device is sold at a relatively low price and further payments are related to future operations of enabling of the features. The softkey in its simplest form is a code to be entered into the operation system of the device and if the code entered matches the one stored within the device the requested feature is enabled. Alternatively the softkey can be a software that must be executed in the device's environment in order to enable the requested feature.
In a very simplified way FIG. 1 depicts an architecture of a device 100 known in the art. The device is connected to a network element management unit 120 via a network connection. A network management message sent from the network element manager 120 is received by a management agent 104 of the device 100 and in response an appropriate action by one of software or hardware modules 102, 106 is carried out, wherein the action and the software or hardware module are determined by the network management message. In this device all software and hardware elements (and features associated with them) are available.
A disadvantage of the solutions known in the art is that the architecture of the device must be designed from the very beginning as one that supports control of features by means of softkeys. If the device was not designed in a way that application of softkeys is possible the architecture must be re-designed in order to implement this functionality. This is of course an expensive and time consuming process additionally complicated by the fact that in the present approach to product development different modules of the same device are developed by different teams or sometimes are purchased from a third party supplier. If the module is bought from the third party supplier only in an object code it can be implemented in the device, but it cannot be modified. It must also be appreciated that apart from the technical difficulties in modifying such third party modules it is also an intellectual property law issue related to copyright.
Hence, an improved control of a device by means of softkeys would be advantageous and in particular one that is independent of the existing architecture of the device.